Distributed storage systems may provide a wide range of storage services, while achieving high scalability, availability, and serviceability. An example of a distributed storage system is Elastic Cloud Storage (ECS) from EMC Corporation of Hopkinton, Massachusetts.
Erasure coding is a coding technique originally created as a forward error correction method for binary erasure channels. More recently, erasure coding has been used to protect data within storage systems, including distributed storage systems. If a storage node fails, data stored thereon may be recovered using coded data stored on other nodes. Existing erasure coding implementations use resource-demanding data recovery techniques that can negatively impact user I/O.